import React, { Component } from 'react'

export default class App extends Component {
  state = {
    count: 0,
  }
  // 高阶函数：返回函数的函数，或函数作为参数传递函数，arr.map(function(){})
  // 函数柯里化：通过函数调用继续返回函数，实现多出接收参数最后统一处理的编码形式！
  handleClick(num) {
    console.log(num)
    // this => 实例
    // return undefined
    return (e) => {
      // e => 事件对象
      // this => 外部
      console.log(num, e)
      console.log(this.state.count, e.target.innerHTML)
    }
  }
  render() {
    return (
      <div style={{ textAlign: 'center' }}>
        <h2>计数器：{this.state.count}</h2>
        {/* 因为 this.handleClick() 加了括号，所以 handleClick 内部的 this 就是实例 */}
        <button onClick={this.handleClick(8)}>+1</button>
      </div>
    )
  }
}
